package top.xtcoder.jdcbase.base.entity.system;

import javax.validation.constraints.NotBlank;

import org.nutz.dao.entity.annotation.ColDefine;
import org.nutz.dao.entity.annotation.ColType;
import org.nutz.dao.entity.annotation.Column;
import org.nutz.dao.entity.annotation.Comment;
import org.nutz.dao.entity.annotation.Table;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import top.xtcoder.jdcbase.base.entity.BaseEntity;

@Table("pb_sys_configs")
@Comment("系统配置表")
@ApiModel("系统配制表")
public class SysConfigs extends BaseEntity{
	
	@Column("field_type_id")
	@ColDefine(type=ColType.VARCHAR)
	@Comment(value="配置分类ID")
	@ApiModelProperty(value="配置分类ID")
	@NotBlank(message = "分类ID不能为空")
	private String fieldTypeId;
	
	@Column("field_type_name")
	@ColDefine(type=ColType.VARCHAR)
	@Comment(value="配置分类")
	@ApiModelProperty(value="配置分类")
	private String fieldTypeName;
	
	@Column("field_name")
	@ColDefine(type=ColType.VARCHAR)
	@Comment(value="字段名称")
	@ApiModelProperty(value="字段名称")
	@NotBlank(message = "字段名称不能为空")
	private String fieldName;
	
	@Column("field_code")
	@ColDefine(type=ColType.VARCHAR)
	@Comment(value="字段代码")
	@ApiModelProperty(value="字段代码")
	@NotBlank(message = "字段代码不能为空")
	private String fieldCode;
	
	
	@Column("field_value")
	@ColDefine(type=ColType.TEXT)
	@Comment(value="字段值,普通文本值就是一个普通字符串，单选多选值为一个json对象,格式为[{k, v}, {k, v}]")
	@ApiModelProperty(value="字段值,普通文本值就是一个普通字符串，单选多选值为一个json对象,格式为[{k, v}, {k, v}]")
	@NotBlank(message = "字段值不能为空")
	private String fieldValue;
	
	
	@Column("field_type")
	@ColDefine(type = ColType.INT)
	@Comment(value="字段类型[1:普通文本值，2:单选[k, v]值, 3:多选[k, v]值]")
	@ApiModelProperty(value="字段类型[1:普通文本值，2:单选[k, v]值, 3:多选[k, v]值，4:富文本,5键值对[{k:'',v:''}]")
	private int fieldType;


	public String getFieldName() {
		return fieldName;
	}


	public void setFieldName(String fieldName) {
		this.fieldName = fieldName;
	}


	public String getFieldCode() {
		return fieldCode;
	}


	public void setFieldCode(String fieldCode) {
		this.fieldCode = fieldCode;
	}


	public String getFieldValue() {
		return fieldValue;
	}


	public void setFieldValue(String fieldValue) {
		this.fieldValue = fieldValue;
	}


	public int getFieldType() {
		return fieldType;
	}


	public void setFieldType(int fieldType) {
		this.fieldType = fieldType;
	}


	public String getFieldTypeName() {
		return fieldTypeName;
	}


	public void setFieldTypeName(String fieldTypeName) {
		this.fieldTypeName = fieldTypeName;
	}


	public String getFieldTypeId() {
		return fieldTypeId;
	}


	public void setFieldTypeId(String fieldTypeId) {
		this.fieldTypeId = fieldTypeId;
	}
	
}
